博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day71 菜单的排序 点击被选中
阅读量:5958 次
发布时间:2019-06-19

本文共 2236 字,大约阅读时间需要 7 分钟。

菜单的排序:(给菜单设置权重,权重高的让他显示在上面)

 

from django import templatefrom django.conf import settingsfrom collections import OrderedDictimport reregister = template.Library()@register.inclusion_tag('menu.html')def menu(request):    menu_dict = request.session[settings.MENU_SESSION_KEY]    order_dict=OrderedDict()    ret=sorted(menu_dict,key=lambda x:menu_dict[x]['weight'],reverse=True)    for i in ret:        order_dict[i] = menu_dict[i]    for r in order_dict.values():        r['class']='hide'        for i in r['children']:            if re.match(r'^{}$'.format(i['url']),request.path_info):                i['class'] = 'active'                r['class']= ''    return {
'menu_list': order_dict.values()}

menu.html文件

{
% for menu in menu_list %}
{
{ menu.title }}
{
% for child in menu.children %}
{
{ child.title }}
{% endfor %}
{
% endfor %}
menu.html标签

点击后被选中

 

 自定义标签.rbac.py中 :

from django import templatefrom django.conf import settingsfrom collections import OrderedDictimport reregister = template.Library()@register.inclusion_tag('menu.html')def menu(request):    menu_dict = request.session[settings.MENU_SESSION_KEY]    order_dict=OrderedDict()    ret=sorted(menu_dict,key=lambda x:menu_dict[x]['weight'],reverse=True)    for i in ret:        order_dict[i] = menu_dict[i]    for r in order_dict.values():        for i in r['children']:            if re.match(r'^{}$'.format(i['url']),request.path_info):                i['class'] = 'active'    return {'menu_list': order_dict.values()}

  menu.html文件

{#
#}{#{% for menu in menu_list %}#}{#
#}{# {
{ menu.title }}
#}{#{% endfor %}#}{#
#}
{% for menu in menu_list %}
{
{ menu.title }}
{% for child in menu.children %}
{
{ child.title }}
{% endfor %}
{% endfor %}

  

转载于:https://www.cnblogs.com/zty1304368100/p/10574123.html

你可能感兴趣的文章
Beta冲刺——day6
查看>>
在一个程序中调用另一个程序并且传输数据到选择屏幕执行这个程序
查看>>
代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能
查看>>
关于在VS2005中编写DLL遇到 C4251 警告的解决办法
查看>>
提高信息安全意识对网络勒索病毒说不
查看>>
我的友情链接
查看>>
IDE---Python IDE之Eric5在window下的安装
查看>>
Mybatis调用Oracle中的存储过程和function
查看>>
基本安装lnmp环境
查看>>
yum源资料汇总
查看>>
7、MTC与MTV,http请求介绍
查看>>
logstash消费阿里云kafka消息
查看>>
unix 环境高级编程
查看>>
MAXIMO 快速查找实现
查看>>
Oracle——条件控制语句
查看>>
第一次作业-准备篇
查看>>
day-6 and day-7:面向对象
查看>>
CSU Double Shortest Paths 湖南省第十届省赛
查看>>
webgl像机世界
查看>>
php正则怎么使用(最全最细致)
查看>>